﻿// --------------------------------------------------------------------------------------------------------------------
// <copyright file="TcpConnection.cs" company="Data Ductus Malmö">
//   (c) 2010 - 2012 Data Ductus Malmö AB
// </copyright>
// --------------------------------------------------------------------------------------------------------------------

namespace DataDuctus.Snmp.Persistor.Core.Tests.TestData
{
  using System.Net;

  using DataDuctus.Snmp.Persistor.Core.Attributes;

  /// <summary>
  /// The tcp connection.
  /// </summary>
  [Entity(BaseOid = "1.3.6.1.2.1.6.13.1", Description = "This class encapsulates the tcpConnTable")]
  public class TcpConnection
  {
    #region Public Properties

    /// <summary>
    /// Gets or sets the connection state.
    /// </summary>
    [Property(SubOid = 1, Access = PropertyAccess.ReadWrite)]
    public TcpConnectionState ConnectionState { get; set; }

    /// <summary>
    /// Gets or sets the local address.
    /// </summary>
    [Index]
    [Property(SubOid = 2)]
    public IPAddress LocalAddress { get; set; }

    /// <summary>
    /// Gets or sets the local port.
    /// </summary>
    [Property(SubOid = 3)]
    public int LocalPort { get; set; }

    /// <summary>
    /// Gets or sets the remote address.
    /// </summary>
    [Property(SubOid = 4)]
    public IPAddress RemoteAddress { get; set; }

    /// <summary>
    /// Gets or sets the remote port.
    /// </summary>
    [Property(SubOid = 5)]
    public int RemotePort { get; set; }

    #endregion
  }
}